package tt.dz.service.sys;

import tt.dz.entity.base.JsonCommon;
import tt.dz.entity.base.JsonForList;
import tt.dz.entity.base.OmsCommonParam;
import tt.dz.entity.exception.BizException;
import tt.dz.entity.exception.OmsDaoException;
import tt.dz.entity.system.OmsOperList;
import tt.dz.entity.system.OmsUrlList;

import java.util.List;

/**
 * @author pengyu
 * @modify huanghao
 */
public interface OperListService
{
	OmsOperList login(String oper_name, String password) throws BizException;

	String add(OmsOperList omsOperList) throws OmsDaoException;

	void update(OmsOperList omsOperList, OmsOperList current_user) throws Exception;

	void updatePwd(OmsOperList current_user, String oldPwd, String newPwd) throws BizException;

	JsonCommon<?> deleteLogical(String oper_id);

	List<OmsUrlList> getUrlListByOperId(String oper_id) throws OmsDaoException;

	JsonCommon<?> findUserCanDoAction(String managerId, String accessPath);

	JsonForList<?> findPageObjs(OmsCommonParam param, OmsOperList oper, Integer entity, String entityId);

	Integer findIsSuperOperMerchant(String operId);

	JsonForList<?> findUserStoreFiles(OmsOperList omsOperList);

	void assignRolesToUser(String operId, String[] roleIds, OmsOperList current_user) throws Exception;

	JsonCommon<?> getCurrentLoginUser(OmsOperList omsOperList, String loginSuperFlag);

	OmsOperList simpleLogin(String account, String password);

	OmsOperList getOper(String account);
}
